home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1996 / MacHack 1996.toast / Hacks / Hacks ’92 / NotificationMon ƒ / NotificationMon.ƒ / Source / PrintLoop.c < prev    next >
Encoding:
C/C++ Source or Header  |  1992-06-22  |  1.1 KB  |  76 lines  |  [TEXT/KAHL]

  1. #include "Printing.h"
  2.  
  3. void ShowPrintError(short err)
  4. {
  5.     asm
  6.     {
  7.         move.w err,d0
  8.     }
  9.     DebugStr("\pA printing error occured.");
  10.     
  11.     
  12. }
  13.  
  14. void PrintDocument()
  15. {
  16.     THPrint        tpr;
  17.     TPPrPort    printPort;
  18.     short        err;
  19.     TPrStatus    tprStat;
  20.     
  21.     tpr = NewHandle(sizeof(TPrint));
  22.     if(!tpr)
  23.         ShowPrintError(MemError());
  24.     PrOpen();
  25.     if(err = PrError())
  26.     {
  27.         ShowPrintError(err);
  28.         goto exit;
  29.     }
  30.     if(!PrStlDialog(tpr))    goto exit;
  31.     if(err = PrError())
  32.     {
  33.         ShowPrintError(err);
  34.         goto exit;
  35.     }
  36.     if(!PrJobDialog(tpr))    goto exit;
  37.     if(err = PrError())
  38.     {
  39.         ShowPrintError(err);
  40.         goto exit;
  41.     }
  42.     printPort = PrOpenDoc(tpr, nil, nil);
  43.     if(err = PrError())
  44.     {
  45.         ShowPrintError(err);
  46.         goto exit;
  47.     }
  48.     PrOpenPage(printPort, nil);
  49.     if(err = PrError())
  50.     {
  51.         ShowPrintError(err);
  52.         goto exit;
  53.     }
  54.     DrawImage(printPort);
  55.     PrClosePage(printPort);
  56.     if(err = PrError())
  57.     {
  58.         ShowPrintError(err);
  59.         goto exit;
  60.     }
  61.     PrCloseDoc(printPort);
  62.     if(err = PrError())
  63.     {
  64.         ShowPrintError(err);
  65.         goto exit;
  66.     }
  67.     if( ((**tpr).prJob.bJDocLoop == bSpoolLoop) && (!PrError()))
  68.         PrPicFile( tpr, nil, nil, nil, &tprStat);
  69.  
  70. exit:
  71.     PrClose();
  72.     if(err = PrError())
  73.     {
  74.         ShowPrintError(err);
  75.     }
  76. }